#!/bin/bash

# 数据库服务启动脚本
# Database Services Startup Script

set -e

echo "🗄️  启动数据库服务..."
echo "================================"

# 检查 Docker 和 Docker Compose
if ! command -v docker &> /dev/null; then
    echo "❌ Docker 未安装，请先安装 Docker"
    exit 1
fi

if ! command -v docker-compose &> /dev/null && ! docker compose version &> /dev/null; then
    echo "❌ Docker Compose 未安装，请先安装 Docker Compose"
    exit 1
fi

# 进入项目根目录
cd "$(dirname "$0")/.."

echo "📁 当前目录: $(pwd)"

# 检查 docker-compose.yml 是否存在
if [ ! -f "docker-compose.yml" ]; then
    echo "❌ docker-compose.yml 不存在"
    exit 1
fi

echo "🚀 启动数据库服务 (MySQL + Redis)..."

# 使用新版本的 docker compose 或旧版本的 docker-compose
if docker compose version &> /dev/null; then
    COMPOSE_CMD="docker compose"
else
    COMPOSE_CMD="docker-compose"
fi

# 只启动数据库相关服务
$COMPOSE_CMD up -d mysql redis

echo "⏳ 等待数据库服务启动..."
sleep 10

# 检查服务状态
echo "📊 检查服务状态..."
$COMPOSE_CMD ps mysql redis

echo "✅ 数据库服务启动完成！"
echo "🗄️  MySQL: localhost:3306"
echo "🔴 Redis: localhost:6379"
echo "📝 MySQL 用户名: admin, 密码: admin123"
echo "📝 Redis 密码: redis123"
echo ""
echo "🛑 停止服务: $COMPOSE_CMD down mysql redis"